package com.mingqijia.gassafety.webserver.response;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * @author mby
 * @version 1.0.0
 * @ClassName RunningReportConfigResponse.java
 * @Description
 * @createTime 2024年03月11日
 */

@Data
@ApiModel("运行报告管理数据")
public class RunningReportResponse {

    @ApiModelProperty(value = "主键")
    private Integer id;

    @ApiModelProperty(value = "客户ID")
    private Integer consumerId;

    @ApiModelProperty(value = "户号")
    private String subsCode;

    @ApiModelProperty(value = "户名")
    private String custName;

    @ApiModelProperty(value = "用户类型")
    private String custType;

    @ApiModelProperty(value = "设备类型")
    private String deviceType;

    @ApiModelProperty(value = "报警已处理次数")
    private Integer alarmProcessed;

    @ApiModelProperty(value = "报警处理中次数")
    private Integer alarmProcessing;

    @ApiModelProperty(value = "报警待处理次数")
    private Integer alarmPending;

    @ApiModelProperty(value = "故障已处理次数")
    private Integer brokenProcessed;

    @ApiModelProperty(value = "故障处理中次数")
    private Integer brokenProcessing;

    @ApiModelProperty(value = "故障待处理次数")
    private Integer brokenPending;

    @ApiModelProperty(value = "离线时长，单位为秒")
    private Long offlineTime;

    @ApiModelProperty(value = "离线时长，解析为中文")
    private String offlineTimeStr;

    @ApiModelProperty(value = "报告内容 0-有报警，1-无报警,正常运行，2-有故障，3-有离线")
    private String reportContentType;

    @ApiModelProperty(value = "报告内容，多个可拼接 0-有报警，1-无报警,正常运行，2-有故障，3-有离线")
    private String reportContentTypeName;

    @ApiModelProperty(value = "报告审核状态 0-待审核 1-已审核 2-无需审核")
    private Integer checkStatus;

    @ApiModelProperty(value = "报告审核状态 0-待审核 1-已审核 2-无需审核")
    private String checkStatusName;

    @ApiModelProperty(value = "报告更新状态 0-空 1-更新中 2-已更新")
    private Integer updateStatus;

    @ApiModelProperty(value = "报告更新状态 0-空 1-更新中 2-已更新")
    private String updateStatusName;

    @ApiModelProperty(value = "报告首次生成时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    private Date createdAt;

    @ApiModelProperty(value = "报告更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    private Date updatedAt;

}
